/*
 * T.Raynal - A.Aviles - F.Diallo
 * XML-Scenarios
 * PPA AL5-2
 * December 2012 
 */
package trash;

import model.Result;
import common.Commons.STATE;
import common.exception.EvaluationException;
import common.interfaces.IEvaluable;

public abstract class Evaluable__<T extends IEvaluable,Y> {
	protected STATE _state;
	public abstract Y yield();
	
	public abstract Result eval()throws EvaluationException;
	
	public abstract Result eval(String operator,IEvaluable expression)throws EvaluationException;
	public abstract Result eval(String operator,String expression)throws EvaluationException;
	
	public STATE state() 
	{
		return _state;
	}
}
